package com.guodi.model.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @描述：指标目录表
 * @作者: 彭辉
 * @日期: 2020-06-05
 */
@ApiModel(value="指标目录表")
@Data
public class IdtIndicatorsDir implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    private String id;

    @ApiModelProperty(value = "目录/指标名称")
    private String name;

    @ApiModelProperty(value = "上级目录id")
    private String parentId;

    @ApiModelProperty(value = "图标")
    private String icon;

    @ApiModelProperty(value = "排序")
    private Integer sort;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "指标id")
    private String indicatorsId;

    @ApiModelProperty(value = "机构id")
    private String orgId;

    @ApiModelProperty(value = "展示内容(全部，监测值，上报值，规划值，基期值)")
    private String displayContent;

    @ApiModelProperty(value = "目录类型(普通目录，图表目录)")
    private String catalogType;

    @ApiModelProperty(value = "文件地址")
    private String uploadFile;

    @ApiModelProperty(value = "指标项自定义编码")
    private String indicatorsCustomCode;

    @ApiModelProperty(value = "创建人",hidden = true)
    private String creator;

    @ApiModelProperty(value = "创建时间",hidden = true)
    private Date createTime;

    @ApiModelProperty(value = "修改人",hidden = true)
    private String modifier;

    @ApiModelProperty(value = "修改时间",hidden = true)
    private Date modifyTime;

    /**
     * @作者: 林楷 2021/4/27
     * @描述: 增加计算指标年均增速值字段
     */
    @ApiModelProperty(value = "是否计算增速（因子发展趋势）（0：否，1：是）")
    private Integer isGrowthRate;

    @ApiModelProperty(value = "当前目录等级",hidden = true)
    @TableField(exist = false)
    private Integer treeLevel;

    @ApiModelProperty(value = "文件类型，1是目录，2是文件",hidden = true)
    private Integer type;

    @ApiModelProperty(value = "指标名称",hidden = true)
    @TableField(exist = false)
    private String idtName;

    @ApiModelProperty(value = "指标编号",hidden = true)
    @TableField(exist = false)
    private String idtCode;

    @ApiModelProperty(value = "指标类型（basic：基本指标，recommend：推荐指标，place：地方指标）",hidden = true)
    @TableField(exist = false)
    private String idtType;

    @ApiModelProperty(value = "指标单位",hidden = true)
    @TableField(exist = false)
    private String idtUnit;

    @ApiModelProperty(value = "指标属性（constraint：约束性，expect：预期性）",hidden = true)
    @TableField(exist = false)
    private String idtAttribute;

    @ApiModelProperty(value = "指标范围（all：全域、city：城区）",hidden = true)
    @TableField(exist = false)
    private String idtScope;

    @ApiModelProperty(value = "行政区划代码",hidden = true)
    @TableField(exist = false)
    private String idtDivisionCode;

    @ApiModelProperty(value = "是否公共指标（0：否，1：省级，2：市级）",hidden = true)
    @TableField(exist = false)
    private Integer idtIsPublic;

    @ApiModelProperty(value = "数据来源（hand：手动录入，formula：公式计算，model：模型结果）",hidden = true)
    @TableField(exist = false)
    private String idtDatasource;

    @ApiModelProperty(value = "关联指标项字符串")
    @TableField(exist = false)
    private String relFormJson;

    @ApiModelProperty(value = "目录所属指标体系Id")
    @TableField(exist = false)
    private String indicatorsTypeId;

    @ApiModelProperty(value = "关联图层对象")
    @TableField(exist = false)
    private IdtModelLayer idtModelLayer;

    @ApiModelProperty(value = "关联图层别名")
    @TableField(exist = false)
    private String alias;

    @ApiModelProperty(value = "得分值")
    @TableField(exist = false)
    private Double scoreValue;

    @ApiModelProperty(value = "指标预警配置")
    private String warnRuleConfig;

    @ApiModelProperty(value = "评估规则配置")
    private String estimateRuleConfig;
}
